Distributed indoor positioning system and method thereof

ABSTRACT

A distributed indoor positioning system and a method thereof are disclosed. In the method, indoor map data corresponding to a place where a user is located is loaded first, and an indoor image of the place where the user is located is captured to generate an image stream. Next, the image stream is compressed to reduce dimensionality thereof, so as to generate a dimensionality-reduced image. The indoor map data corresponding to the dimensionality-reduced image is obtained from the loaded indoor map data, and a position of the user is determined according to the obtained indoor map data.

BACKGROUND 1. Technical Field

The present disclosure relates to positioning techniques, and moreparticularly to a distributed indoor positioning system and a methodthereof.

2. Description of the Related Art

With the rapid development of information technology, and varioustechnological applications are integrated into people's lives tosimplify many complicated procedures and make lives more convenient.Among the technological applications, location based services (LBS) havebeen widely used in life, and a key feature of the location basedservice is positioning. In the past, the positioning technology was usedfor military purposes; however, in recent years, the positioningtechnology is gradually used in navigation applications, pushapplications, or emergency disaster relief applications. Among manypositioning technologies, the global positioning system (GPS) is morecommon.

In outdoors, the global positioning system can be used to determine acurrent location for further location-based service or emergencyassistance, such as the service of finding nearby stores or parkinglots. Since the global positioning system uses satellites and thetriangulation positioning principle to determine a position of anobject, the accuracy of the determined position is high. However, theglobal positioning system is easily affected by signal refraction ordiffraction occurred in place where there are many high-rise buildings,or in an indoor space, thereby generating an indoor positioning resultwith great errors; obviously, the global position system does not workin indoor environment. For this reason, many companies use othertechnologies, such as infrared, ultrasonic, ZigBee, Wi-Fi, or Beacontechnologies, for indoor positioning; however, there is still much roomfor improvement in the above technologies. For example, theaforementioned technologies usually map the user's movement result topre-stored map data, but the size of the corresponding map data possiblyreaches several GB or dozens GB when the indoor space is large. The userdevice needs to load the large quantity of map data for positioning, andit causes an excessive load or computation of the user device.Similarly, the large quantity of map data also increases burden of a mapdata integration server.

Therefore, how to develop an indoor positioning technology, inparticular, how to reduce the computing loads of the user device and themap data integration server and also provide accurate positioning resultwhen the amount of the indoor map data is huge, is a key issue for thoseskilled in the art.

SUMMARY

The present disclosure is to provide an indoor positioning technology,which can reduce a load computation of a user device or a map dataintegration system by reducing a recorded data amount of map data,thereby solving the conventional problem that the positioning speed istoo slow because of the huge amount of map data.

The present disclosure provides a distributed indoor positioning systemcomprising a map data loading module, an image capturing module, animage dimensionality reduction module and a comparison module. The mapdata loading module is configured to load indoor map data correspondingto a place where a user is located. The image capturing module isconfigured to capture, through a camera of a user device, an indoorimage corresponding to the place where the user is located, so as togenerate an image stream. The image dimensionality reduction module isconfigured to compress the image stream, reduce dimensionality of theimage stream, and generate a dimensionality-reduced image. Thecomparison module is configured to obtain, from the map data loadingmodule, indoor map data corresponding to the dimensionality-reducedimage, and determine a position of the user according to thecorresponding indoor map data.

In an embodiment, the distributed indoor positioning system furtherincludes an image temporary storage unit configured to temporarily storethe image stream.

In an embodiment, the distributed indoor positioning system furtherincludes a map data building module configured to execute a buildingmode to track movement of the user for defining coordinate data, andlink the coordinate data with the dimensionality-reduced imagecorresponding thereto, so as to generate personal positioning map data.

In an embodiment, the personal positioning map data generated by the mapdata building module is uploaded to a map data integration server, andstored in a database of the map data integration server. In addition,the map data integration server receives and integrates the personalpositioning map data transmitted by at least one user, so as to generatethe indoor map data.

In an embodiment, the comparison module activates a navigation programor provides guide information after the position of the user isdetermined.

Moreover, the present disclosure provides a distributed indoorpositioning method, comprising: loading indoor map data corresponding toa place where a user is located; capturing an indoor image of the placewhere the user is located to generate an image stream; compressing theimage stream to reduce dimensionality of the image stream, so as togenerate a dimensionality-reduced image; and obtaining, from the loadedindoor map data, indoor map data corresponding to thedimensionality-reduced image, and determining a position of the useraccording to the obtained indoor map data.

In an embodiment, the distributed indoor positioning method furtherincludes, before the step of determining the position of the user,executing a building mode to track movement of the user for definingcoordinate data and link the coordinate data with thedimensionality-reduced image corresponding thereto, so as to generateand upload personal positioning map data to a map data integrationserver. In addition, the map data integration server integrates thepersonal positioning map data transmitted by at least one user togenerate the indoor map data.

In an embodiment, the distributed indoor positioning method furtherincludes, after the position of the user is determined, activating anavigation program or providing guide information.

Compared with the conventional technology, the distributed indoorpositioning system and the method of the present disclosure can executethe dimensionality reduction processing on the captured indoor imagesfor building the map data, so that the final indoor map data file is nottoo large and does not cause a storage problem when being downloaded toa user device. Furthermore, the dimensionality reduction process is alsoperformed on the captured indoor image when determining the position ofthe user. As a result, the positioning determination in the user devicecan be accelerated when the sizes of the built map data and the indoorimage are reduced. Therefore, the distributed indoor positioning systemand method of the present disclosure using the dimensionality reductiontechnique can provide the positioning result with high accuracy,accelerate the speed of positioning determination, and also reduce thecomputing load of the user device and the map data integration server.

BRIEF DESCRIPTION OF THE DRAWINGS

The structure, operating principle and effects of the present disclosurewill be described in detail by way of various embodiments which areillustrated in the accompanying drawings.

FIG. 1 is a system architecture diagram of a distributed indoorpositioning system of the present disclosure.

FIG. 2 is a system architecture diagram of another embodiment of adistributed indoor positioning system of the present disclosure.

FIG. 3 is a flowchart of a distributed indoor positioning method of thepresent disclosure.

FIG. 4 is a flowchart showing the steps in an operation of thedistributed indoor positioning system building map data beforepositioning determination according to the present disclosure.

FIG. 5 is a flowchart showing the steps in an operation of thedistributed indoor positioning system executing positioningdetermination according to the present disclosure.

DETAILED DESCRIPTION OF THE EMBODIMENTS

The following embodiments of the present disclosure are herein describedin detail with reference to the accompanying drawings. These drawingsshow specific examples of the embodiments of the present disclosure. Itis to be acknowledged that these embodiments are exemplaryimplementations and are not to be construed as limiting the scope of thepresent disclosure in any way. Further modifications to the disclosedembodiments, as well as other embodiments, are also included within thescope of the appended claims. These embodiments are provided so thatthis disclosure is thorough and complete, and fully conveys theinventive concept to those skilled in the art. Regarding the drawings,the relative proportions and ratios of elements in the drawings may beexaggerated or diminished in size for the sake of clarity andconvenience. Such arbitrary proportions are only illustrative and notlimiting in any way. The same reference numbers are used in the drawingsand description to refer to the same or like parts.

It is to be acknowledged that although the terms ‘first’, ‘second’,‘third’, and so on, may be used herein to describe various elements,these elements should not be limited by these terms. These terms areused only for the purpose of distinguishing one component from anothercomponent. Thus, a first element discussed herein could be termed asecond element without altering the description of the presentdisclosure. As used herein, the term “or” includes any and allcombinations of one or more of the associated listed items.

It will be acknowledged that when an element or layer is referred to asbeing “on,” “connected to” or “coupled to” another element or layer, itcan be directly on, connected or coupled to the other element or layer,or intervening elements or layers may be present. In contrast, when anelement is referred to as being “directly on,” “directly connected to”or “directly coupled to” another element or layer, there are nointervening elements or layers present.

In addition, unless explicitly described to the contrary, the word“comprise” and variations such as “comprises” or “comprising”, will beacknowledged to imply the inclusion of stated elements but not theexclusion of any other elements.

In the process of the indoor positioning determination according to auser's movement, when the indoor field is too large and the originalimage data record is selected for positioning, the excessive sizes offiles possibly cause data loading problem of the user device, or theserver performing positioning integration. Therefore, the presentdisclosure proposes to perform image dimensionality reduction on thecaptured image and distribute the computational load to every userdevice, thereby solving the conventional problem.

Please refer to FIG. 1, which is a system architecture diagram of adistributed indoor positioning system of the present disclosure. Thedistributed indoor positioning system 1 of the present disclosure isexecuted in a user device, and the user device can be a mobile device,such as a mobile phone or a tablet. A built-in camera of the user devicecan be used to capture an indoor image, and after the indoor image isanalyzed and compared with pre-stored map data, an indoor position ofthe user can be accurately determined. As shown in FIG. 1, thedistributed indoor positioning system 1 of the present disclosureincludes a map data loading module 11, an image capturing module 12, animage dimensionality reduction module 13 and a comparison module 14.

The map data loading module 11 can load indoor map data 100corresponding to the place where the user is located. Simply speaking,in order to determine the position of the user, the map data loadingmodule 11 can first load the indoor map data 100 of the place where theuser is located; for example, the map data loading module 11 can loadthe indoor map data 100 through the user device from network, such asfrom a server performing the positioning integration. In a conditionthat the size of the map data is not adjusted, it possibly causesinsufficient storage space and excessive computational load of the userdevice. For example, when the user is located on the B floor of abuilding A, the map data of the B floor must be loaded first into theuser device, so the map data must be built in advance. The operation ofbuilding the map data is described in following paragraphs.

The image capturing module 12 can capture, through a camera of the userdevice, an indoor image 200 of the place where the user is located, soas to generate an image stream. The image capturing module 12 can be acamera or an image capture device connected to the user device, and usedto capture the indoor image 200 of the place where user is located. Theindoor image 200 is processed to form the image stream; in other words,the user can hold the user device to capture the indoor image 200, andthe indoor image 200 will be used as a basis for positioningdetermination.

The image dimensionality reduction module 13 can perform compression onthe image stream to reduce dimensionality of the image stream, so as togenerate a dimensionality-reduced image. As mentioned above, when thegenerated map data is not compressed, the excessive size of the map datapossibly causes the system to execute slowly. For this reason, thedimensionality reduction processing is performed on the obtained indoormap data 100 for building the map data. Before image comparison, thedimensionality reduction processing is also performed on the imagestream of the captured indoor image 200, to compress the size of theimage stream.

The comparison module 14 can obtain the indoor map data 100corresponding to the dimensionality-reduced image, from the map dataloading module 11 and then determine the position of the user accordingto the corresponding indoor map data 100. After the comparison module 14receives the dimensionality-reduced image stream, the comparison module14 can obtain the indoor map data 100 corresponding to thedimensionality-reduced image, from the map data loading module 11. Whenthe dimensionality-reduced image matches the obtained indoor map data100, the position of the user can be estimated. Specifically, the indoormap data 100 can be recorded with the coordinates of the indoorpositions, so that the indoor position of the user can be determinedaccording to the captured indoor image.

The map data loading module 11, the image capturing module 12, the imagedimensionality reduction module 13 and the comparison module 14 can beimplemented by software. The user can load distributed indoorpositioning system 1 into the user device, and when the user wants toexecute the indoor positioning, the user can activate the distributedindoor positioning system 1, and the modules of the distributed indoorpositioning system 1 start to load execution data, capture image andperform subsequent analysis comparison, respectively. After theoperation of the distributed indoor positioning system 1 is completed, apositioning result can be generated and displayed on a screen of theuser device.

According to above-mentioned contents, the indoor map data 100 can bethe pre-processed map data with a reduced file size, and the user canuse the user device to capture the indoor image 200 of the place wherethe user is located. The image dimensionality reduction module 13 thenperforms the dimensionality reduction processing on the indoor image200, and the indoor map data 100 corresponding to thedimensionality-reduced image can be obtained from the map data loadingmodule 11. The position of the user can be obtained according to thecorresponding indoor map data 100.

According to the present disclosure, since the dimensionalities of theloaded indoor map data 100 and the captured indoor image 200 arereduced, the file sizes of the indoor image 200 and the map data 100 canbe reduced, so that the problem that the distributed indoor positioningsystem 1 in the user device executes too slowly because of the excessivecomputation can be prevented, and the computing load of the user devicecan be reduced, thereby facilitating the distributed indoor positioningsystem 1 to quickly estimate the position of the user.

Please refer to FIG. 2, which is a system architecture diagram ofanother embodiment of a distributed indoor positioning system of thepresent disclosure. As shown in FIG. 2, the map data loading module 11,the image capturing module 12, the image dimensionality reduction module13 and the comparison module 14 of the distributed indoor positioningsystem 1 of this embodiment shown in FIG. 2 are the same as that of theembodiment shown in FIG. 1, so detailed descriptions are not repeatedherein. In this embodiment, the distributed indoor positioning system 1of the present disclosure can include an image temporary storage unit 15and a map data building module 16.

The image temporary storage unit 15 can temporarily store the imagestream generated by the image capturing module 12. The image capturingmodule 12 possibly captures a plurality of indoor images 200continuously but the image dimensionality reduction module 13 does notstart to execute the comparison process, so the image temporary storageunit 15 can temporarily store the image stream, and the imagedimensionality reduction module 13 can fetch the required image streamfor comparison process later. In an embodiment, the image temporarystorage unit 15 can be a buffer register or a volatile memory.

According to above content, it can be understood that the indoor mapdata 100 is pre-built. In order to prevent a map data integration server2 from having an excessive computing load when building the map data,the present disclosure proposes that the user device can first processthe obtained image data for building the map data, and the image dataprocessed by the user device can then be uploaded to the map dataintegration server 2. Under this mechanism, the present disclosureprovides a distributed computing concept that each user device processesthe obtained image data first, so as to effectively reduce the computingload of the map data integration server 2. The map data building module16 can execute the operation of building the map data.

In a data building mode, the map data building module 16 can track theuser's movement to define coordinate data. The map data building module16 can link the coordinate data with the dimensionality-reduced imagecorresponding thereto, to generate personal positioning map data. Simplyspeaking, when the positioning process is not executed, the buildingmode of map data building can be executed and the map data buildingmodule 16 can start to continuously track the user's movement, andgenerate the coordinate data according to the user's movement. Thecoordinate data can also be called as a built coordinate. At the sametime, the image capturing module 12 can capture the indoor imagecorresponding to the built coordinate data, and the dimensionalityreduction processing can be performed on the captured indoor image.Finally, the map data building module 16 can pair and combine thecoordinate data with the dimensionality-reduced image, so that it candetermine which image matches which coordinate data. This map data isbuilt by single user and also called as personal positioning map data.Therefore, after the user captures the indoor image, the coordinate datacan be estimated, so as to obtain the indoor position corresponding tothe capture indoor image.

In an embodiment, the personal positioning map data generated by the mapdata building module 16 can be uploaded to the map data integrationserver 2, and stored in a database 21 of the map data integration server2. Furthermore, the map data integration server 2 can receive andintegrate the personal positioning map data transmitted by at least oneuser, so that the personal positioning map data uploaded by multipleusers can be integrated to generate the indoor map data 100.

In another embodiment, after the comparison module 14 determines theposition of the user, the comparison module 14 can activate a navigationprogram or provide guide information. Specifically, the comparisonmodule 14 can provide the positioning result to, for example, a servicemodule (which is not shown in figures), and the service module canprovide a service corresponding to the positioning result, for example,the service module can perform a guide program, or guide informationcorresponding to the position obtained by the positioning.

Please refer to FIG. 3, which is a flowchart of a distributed indoorpositioning method of the present disclosure. As shown in FIG. 3, instep S31, the indoor map data corresponding to the place where the useris located is loaded. In order to determine the position of the user,the indoor map data corresponding to the place where the user is locatedmust be obtained first in the process of the positioning determination,so as to determine the position of the user according to the indoorimage corresponding to the place where the user is located.

In step S32, the indoor image of the place where the user is located iscaptured to generate an image stream. Specifically, a camera of the userdevice can be used to capture the indoor image of the place where theuser is located, and the indoor image can be used as the basis forsubsequent positioning determination. The indoor image is processed togenerate an image stream, and the image stream is temporarily stored.

In step S33, the image stream is compressed to reduce dimensionalitythereof, so as to generate a dimensionality-reduced image. As mentionedabove, if the map data is not compressed, the problem of excessive sizeof the map data possibly occurs. Therefore, the dimensionality reductionprocessing is performed on the built indoor map data in advance. For theimage comparison in next step, the dimensionality reduction processingis also performed on the image stream in this step.

In step S34, the indoor map data corresponding to thedimensionality-reduced image is obtained from the loaded indoor mapdata, and the position of the user can be determined according to thecorresponding indoor map data. In this step, after receiving thedimensionality-reduced image stream, the indoor map data correspondingto the received dimensionality-reduced image stream can be obtained fromthe indoor map data loaded previously, to estimate the position of theuser. In an operation of position estimation, the indoor positioncoordinates corresponding to the obtained indoor map data can be used todetermine the position where the indoor image is captured.

In an embodiment, before executing the indoor positioning, the buildingmode can be executed. In the building mode, the user's movement istracked to define the coordinate data, and the coordinate data is linkedwith the corresponding dimensionality-reduced image, so as to generatethe personal positioning map data. Next, the personal positioning mapdata can be uploaded to the map data integration server.

Furthermore, the map data integration server can integrate the personalpositioning map data transmitted by at least one user, to generate theindoor map data; in other words, the map data integration server canintegrate personal positioning map data provided by multiple users, togenerate the final indoor map data.

In another embodiment, after the user's position is determined, thedistributed indoor positioning system can activate a navigation programor provide guide information. The positioning service is usuallyrequired for indoor navigation or guide information providing service.Therefore, the indoor positioning technology of the present disclosurecan be used to determine the position of the user and provide theservice corresponding to the position of the user.

Please refer to FIG. 4, which is a flowchart showing the steps in anoperation of distributed indoor positioning system building the map databefore the positioning determination process. As shown in FIG. 4, whenthe operation of building the map data starts, three steps can beexecuted simultaneously or sequentially. One of the three steps is tostart the camera to shoot the indoor image and convert the indoor imageinto the image stream; at this time, the image stream can be temporarilystored in an image temporary storage buffer (which can be the imagetemporary storage unit shown in FIG. 2). When the builder (such as theuser) is moving, the distributed indoor positioning system keepstracking and recording the movement of the builder, to generate thebuilt coordinates (which is the coordinate data).

After the image stream and the built coordinates are obtained, thedistributed indoor positioning system starts the image dimensionalityreduction module. The image dimensionality reduction module obtains theimage stream from the image temporary storage buffer, and performsdimensionality reduction processing on the image, and then map thedimensionality-reduced image to the built coordinates, so as to completethe operation of building the map data. Next, it is determined whetherthe operation of building the map data continues, and when the operationof building the map data is determined to continue, the operation ofmapping the dimensionality-reduced image to the built coordinate isexecuted, to generate the map data. When it is determined that theoperation of building the map data does not continue, it indicated thatthe map data is built completely, so that the map data can be uploadedto the database of the map data integration server.

It should be noted that one or more user possibly uploads the map datafor many times, so the map data integration server can also integratethe map data uploaded by multiple users to form the indoor map data foreveryone to use.

Please refer to FIG. 5, which is a flowchart showing the steps of adistributed indoor positioning system executing positioning process,according to the present disclosure. As shown in FIG. 5, when thedistributed indoor positioning system starts the positioningdetermination process, three steps can be executed simultaneously orsequentially, and one of the three steps is to start the camera to shootthe indoor image, convert the indoor image into the image stream, andtemporarily store the image stream in the image temporary storage buffer(which can be the image temporary storage unit shown in FIG. 2). Inorder to determine the place where the user is located, the indoor mapdata related to the place where the user is located can be loaded. Theindoor map data is pre-built, as shown in FIG. 4.

After the image stream and the indoor map data are obtained, thedistributed indoor positioning system starts the image dimensionalityreduction module. The image dimensionality reduction module performsdimensionality reduction on the image stream, and then comparesdimensionality-reduced image with the indoor map data, and determinewhether the comparison is successful. When the comparison is successful,the image dimensionality reduction module generates the positioningresult, and the corresponding service, such as navigation service orguiding service, can be provided. When the comparison is not successful,it indicates that the position of the user is not determined, and theflow returns to the comparison step to perform comparison on other imagestream or other indoor map data, thereby determining the position of theuser.

According to above-mentioned contents, the distributed indoorpositioning system and method of the present disclosure can performdimensionality reduction processing on the loaded indoor map data andthe image stream formed by the captured images, so that the file sizesof the map data and the indoor image can be reduced, and the computationof the distributed indoor positioning system for executing thepositioning process can be reduced; furthermore, every user device canperform the dimensionality reduction processing on the indoor map data,so as to effectively reduce the computing load of the map dataintegration server.

The present disclosure disclosed herein has been described by means ofspecific embodiments. However, numerous modifications, variations andenhancements can be made thereto by those skilled in the art withoutdeparting from the spirit and scope of the disclosure set forth in theclaims.

What is claimed is:
 1. A distributed indoor positioning system,comprising: a map data loading module configured to load indoor map datacorresponding to a place where a user is located; an image capturingmodule configured to capture, through a camera of a user device, anindoor image corresponding to the place where the user is located, andgenerate an image stream; an image dimensionality reduction moduleconfigured to compress the image stream, reduce dimensionality of theimage stream, and generate a dimensionality-reduced image; and acomparison module configured to obtain, from the indoor map data in themap data loading module, corresponding indoor map data according to thedimensionality-reduced image, and determine a position of the useraccording to the corresponding indoor map data.
 2. The distributedindoor positioning system according to claim 1, further comprising animage temporary storage unit configured to temporarily store the imagestream.
 3. The distributed indoor positioning system according to claim1, further comprising a map data building module configured to execute abuilding mode to track movement of the user for defining coordinatedata, link the coordinate data with the dimensionality-reduced imagecorresponding thereto, and generate personal positioning map data. 4.The distributed indoor positioning system according to claim 3, whereinthe personal positioning map data generated by the map data buildingmodule is uploaded to a map data integration server, and stored in adatabase of the map data integration server.
 5. The distributed indoorpositioning system according to claim 4, wherein the map dataintegration server receives and integrates the personal positioning mapdata transmitted by at least one user to generate the correspondingindoor map data.
 6. The distributed indoor positioning system accordingto claim 1, wherein the comparison module activates a navigation programor provides guide information after the position of the user isdetermined.
 7. A distributed indoor positioning method, comprising:loading indoor map data corresponding to a place where a user islocated; capturing an indoor image of the place where the user islocated to generate an image stream; compressing the image stream toreduce dimensionality of the image stream and generate adimensionality-reduced image; and obtaining, from the loaded indoor mapdata, corresponding indoor map data according to thedimensionality-reduced image, and determining a position of the useraccording to the corresponding indoor map data.
 8. The distributedindoor positioning method according to claim 7, further comprising:before determining the position of the user, executing a building modeto track movement of the user for defining coordinate data, link thecoordinate data with the dimensionality-reduced image correspondingthereto, and generate and upload personal positioning map data to a mapdata integration server.
 9. The distributed indoor positioning methodaccording to claim 8, wherein the map data integration server integratesthe personal positioning map data transmitted by at least one user togenerate the corresponding indoor map data.
 10. The distributed indoorpositioning method according to claim 7, further comprising: after theposition of the user is determined, activating a navigation program orproviding guide information.